package br.edu.ufcg.splab.techniques.reduction.functions.choice;

import br.edu.ufcg.splab.generator.TestCase;

public interface ChoiceFunction {
	
	/**
	 * Defines an order to analyze the test cases.
	 */
	public void defineOrderChoice(TestCase tc1, TestCase tc2);
	
	/**
	 * Returns the first test case. 
	 */
	public TestCase firstChoice();
	
	/**
	 * Returns the second test case. 
	 */
	public TestCase secondChoice();

	/**
     * Provide a string representation of the choice function to be written.
     * @return The string representation of the choice function.
     */
	public String getFunction();
}
